<!DOCTYPE html>
<html>
<head><meta name="generator" content="Hexo 3.9.0">
    

    

    



    <meta charset="utf-8">
    
    
    
    
    <title>详解JSP中Shiro标签的使用 | 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~ | It&#39;s founded on March 9, 2019 and the open source address for the blog notes https://github.com/YUbuntu0109/YUbuntu0109.github.io</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    
    <meta name="theme-color" content="#3F51B5">
    
    
    <meta name="keywords" content="JSP,Shiro">
    <meta name="description" content="学习笔记 : 详解JSP中Shiro标签的使用Apache Shiro provides a Subject-aware JSP/GSP tag library that allows you to control your JSP, JSTL or GSP page output based on the current Subject’s state. This is quite useful">
<meta name="keywords" content="JSP,Shiro">
<meta property="og:type" content="article">
<meta property="og:title" content="详解JSP中Shiro标签的使用">
<meta property="og:url" content="https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/index.html">
<meta property="og:site_name" content="欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~">
<meta property="og:description" content="学习笔记 : 详解JSP中Shiro标签的使用Apache Shiro provides a Subject-aware JSP/GSP tag library that allows you to control your JSP, JSTL or GSP page output based on the current Subject’s state. This is quite useful">
<meta property="og:locale" content="en">
<meta property="og:updated_time" content="2019-12-12T15:00:32.359Z">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="详解JSP中Shiro标签的使用">
<meta name="twitter:description" content="学习笔记 : 详解JSP中Shiro标签的使用Apache Shiro provides a Subject-aware JSP/GSP tag library that allows you to control your JSP, JSTL or GSP page output based on the current Subject’s state. This is quite useful">
    
        <link rel="alternate" type="application/atom+xml" title="欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~" href="/atom.xml">
    
    <link rel="shortcut icon" href="/favicon.ico">
    <link rel="stylesheet" href="//unpkg.com/hexo-theme-material-indigo@latest/css/style.css">
    <script>window.lazyScripts=[]</script>

    <!-- custom head -->
    

</head>

<body>
    <div id="loading" class="active"></div>

    <aside id="menu" class="hide" >
  <div class="inner flex-row-vertical">
    <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="menu-off">
        <i class="icon icon-lg icon-close"></i>
    </a>
    <div class="brand-wrap" style="background-image:url(/img/brand.jpg)">
      <div class="brand">
        <a href="/" class="avatar waves-effect waves-circle waves-light">
          <img src="/img/my-portrait.jpg">
        </a>
        <hgroup class="introduce">
          <h5 class="nickname">黄宇辉</h5>
          <a href="mailto:3083968068@qq.com" title="3083968068@qq.com" class="mail">3083968068@qq.com</a>
        </hgroup>
      </div>
    </div>
    <div class="scroll-wrap flex-col">
      <ul class="nav">
        
            <li class="waves-block waves-effect">
              <a href="/"  >
                <i class="icon icon-lg icon-home"></i>
                Homepage
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/archives"  >
                <i class="icon icon-lg icon-archives"></i>
                Archives
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/tags"  >
                <i class="icon icon-lg icon-tags"></i>
                Tags
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="/categories"  >
                <i class="icon icon-lg icon-th-list"></i>
                Categories
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="https://github.com/YUbuntu0109" target="_blank" >
                <i class="icon icon-lg icon-github"></i>
                Github
              </a>
            </li>
        
            <li class="waves-block waves-effect">
              <a href="https://space.bilibili.com/364361791" target="_blank" >
                <i class="icon icon-lg icon-link"></i>
                Bilibili
              </a>
            </li>
        
      </ul>
    </div>
  </div>
</aside>

    <main id="main">
        <header class="top-header" id="header">
    <div class="flex-row">
        <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light on" id="menu-toggle">
          <i class="icon icon-lg icon-navicon"></i>
        </a>
        <div class="flex-col header-title ellipsis">详解JSP中Shiro标签的使用</div>
        
        <div class="search-wrap" id="search-wrap">
            <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="back">
                <i class="icon icon-lg icon-chevron-left"></i>
            </a>
            <input type="text" id="key" class="search-input" autocomplete="off" placeholder="Search">
            <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="search">
                <i class="icon icon-lg icon-search"></i>
            </a>
        </div>
        
        
        <a href="javascript:;" class="header-icon waves-effect waves-circle waves-light" id="menuShare">
            <i class="icon icon-lg icon-share-alt"></i>
        </a>
        

        <!-- background music(Mar 11,2019 AM) -->
        <div>
            <iframe frameborder="no" border="0" marginwidth="0" marginheight="0" width=280 height=52 src="//music.163.com/outchain/player?type=2&id=438801642&auto=1&height=32"></iframe>
        </div>
        <!---------------------->
    </div>
</header>
<header class="content-header post-header">

    <div class="container fade-scale">
        <h1 class="title">详解JSP中Shiro标签的使用</h1>
        <h5 class="subtitle">
            
                <time datetime="2019-08-11T07:42:13.000Z" itemprop="datePublished" class="page-time">
  2019-08-11
</time>


            
        </h5>
    </div>

    


</header>


<div class="container body-wrap">
    
    <aside class="post-widget">
        <nav class="post-toc-wrap post-toc-shrink" id="post-toc">
            <h4>TOC</h4>
            <ol class="post-toc"><li class="post-toc-item post-toc-level-2"><a class="post-toc-link" href="#学习笔记-详解JSP中Shiro标签的使用"><span class="post-toc-number">1.</span> <span class="post-toc-text">学习笔记 : 详解JSP中Shiro标签的使用</span></a><ol class="post-toc-child"><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#Tag-Library-Configuration"><span class="post-toc-number">1.1.</span> <span class="post-toc-text">Tag Library Configuration</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-authenicated"><span class="post-toc-number">1.2.</span> <span class="post-toc-text">shiro : authenicated</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-guest"><span class="post-toc-number">1.3.</span> <span class="post-toc-text">shiro : guest</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-hasAnyRoles"><span class="post-toc-number">1.4.</span> <span class="post-toc-text">shiro : hasAnyRoles</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-hasPermission"><span class="post-toc-number">1.5.</span> <span class="post-toc-text">shiro : hasPermission</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-hashRole"><span class="post-toc-number">1.6.</span> <span class="post-toc-text">shiro : hashRole</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-lacksPermission"><span class="post-toc-number">1.7.</span> <span class="post-toc-text">shiro : lacksPermission</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-lacksRole"><span class="post-toc-number">1.8.</span> <span class="post-toc-text">shiro : lacksRole</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-notAuthenticated"><span class="post-toc-number">1.9.</span> <span class="post-toc-text">shiro : notAuthenticated</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-principal"><span class="post-toc-number">1.10.</span> <span class="post-toc-text">shiro : principal</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#shiro-user"><span class="post-toc-number">1.11.</span> <span class="post-toc-text">shiro : user</span></a></li><li class="post-toc-item post-toc-level-3"><a class="post-toc-link" href="#标签嵌套"><span class="post-toc-number">1.12.</span> <span class="post-toc-text">标签嵌套</span></a></li></ol></li></ol>
        </nav>
    </aside>


<article id="post-详解JSP中Shiro标签的使用"
  class="post-article article-type-post fade" itemprop="blogPost">

    <div class="post-card">
        <h1 class="post-card-title">详解JSP中Shiro标签的使用</h1>
        <div class="post-meta">
            <time class="post-time" title="2019-08-11 07:42:13" datetime="2019-08-11T07:42:13.000Z"  itemprop="datePublished">2019-08-11</time>

            


            

        </div>
        <div class="post-content" id="post-content" itemprop="postContent">
            <h2 id="学习笔记-详解JSP中Shiro标签的使用"><a href="#学习笔记-详解JSP中Shiro标签的使用" class="headerlink" title="学习笔记 : 详解JSP中Shiro标签的使用"></a>学习笔记 : 详解JSP中Shiro标签的使用</h2><p><em>Apache Shiro provides a Subject-aware JSP/GSP tag library that allows you to control your JSP, JSTL or GSP page output based on the current Subject’s state. This is quite useful for personalizing views based on the identity and authorization state of the current user viewing the web page. For more information, please refer to : <a href="http://shiro.apache.org/web.html#Web-taglibrary" target="_blank" rel="noopener">http://shiro.apache.org/web.html#Web-taglibrary</a></em></p>
<h3 id="Tag-Library-Configuration"><a href="#Tag-Library-Configuration" class="headerlink" title="Tag Library Configuration"></a>Tag Library Configuration</h3><p><em>The Tag Library Descriptor (TLD) file is bundled in shiro-web.jar in the <code>META-INF/shiro.tld</code> file. To use any of the tags, add the following line to the top of your JSP page (or wherever you define page directives) :</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">%@</span> <span class="attr">taglib</span> <span class="attr">prefix</span>=<span class="string">"shiro"</span> <span class="attr">uri</span>=<span class="string">"http://shiro.apache.org/tags"</span> %&gt;</span></span><br></pre></td></tr></table></figure></p>
<ul>
<li>We’ve used the shiro prefix to indicate the shiro tag library namespace, but you can assign whatever name you like.</li>
</ul>
<h3 id="shiro-authenicated"><a href="#shiro-authenicated" class="headerlink" title="shiro : authenicated"></a>shiro : authenicated</h3><p><em>表示认证已通过,但不包括<code>remember me</code>登录的</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:authenticated</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>用户身份验证已通过<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:authenticated</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有已通过用户认证,但不是通过记住我(<code>remember me</code>)浏览才会看到标签内的内容</em></p>
<h3 id="shiro-guest"><a href="#shiro-guest" class="headerlink" title="shiro : guest"></a>shiro : guest</h3><p><em>表示是游客身份,没有登录</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:guest</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>您当前是游客,<span class="tag">&lt;/<span class="name">label</span>&gt;</span><span class="tag">&lt;<span class="name">a</span> <span class="attr">href</span>=<span class="string">"/login.jsp"</span> &gt;</span>请登录<span class="tag">&lt;/<span class="name">a</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:guest</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有是没有登录过,以游客的身份浏览才会看到标签内的内容</em></p>
<h3 id="shiro-hasAnyRoles"><a href="#shiro-hasAnyRoles" class="headerlink" title="shiro : hasAnyRoles"></a>shiro : hasAnyRoles</h3><p><em>表示拥有这些角色中其中一个</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:hasAnyRoles</span> <span class="attr">name</span>=<span class="string">"admin,user"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>这是拥有admin或者是user角色的用户<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:hasAnyRoles</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有成功登录后,且具有admin或者user角色的用户才会看到标签内的内容. name属性中可以填写多个角色名称，以逗号( , )分隔</em></p>
<h3 id="shiro-hasPermission"><a href="#shiro-hasPermission" class="headerlink" title="shiro : hasPermission"></a>shiro : hasPermission</h3><p><em>表示拥有某一权限</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:hasPermission</span> <span class="attr">name</span>=<span class="string">"admin:add"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>这个用户拥有admin:add的权限<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:hasPermission</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有成功登录后,且具有admin:add权限的用户才可以看到标签内的内容,name属性中只能填写一个权限的名称</em></p>
<h3 id="shiro-hashRole"><a href="#shiro-hashRole" class="headerlink" title="shiro : hashRole"></a>shiro : hashRole</h3><p><em>表示拥有某一角色</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:hasRole</span> <span class="attr">name</span>=<span class="string">"admin"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>这个用户拥有的角色是admin<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:hasRole</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有成功登录后,且具有admin角色的用户才可以看到标签内的内容,name属性中只能填写一个角色的名称</em></p>
<h3 id="shiro-lacksPermission"><a href="#shiro-lacksPermission" class="headerlink" title="shiro : lacksPermission"></a>shiro : lacksPermission</h3><p><em>表示不拥有某一角色</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:lacksPermission</span> <span class="attr">name</span>=<span class="string">"admin:delete"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>这个用户不拥有admin:delete的权限<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:lacksPermission</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有成功登录后,且不具有admin:delete权限的用户才可以看到标签内的内容,name属性中只能填写一个权限的名称</em></p>
<h3 id="shiro-lacksRole"><a href="#shiro-lacksRole" class="headerlink" title="shiro : lacksRole"></a>shiro : lacksRole</h3><p><em>表示不拥有某一角色</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:lacksRole</span> <span class="attr">name</span>=<span class="string">"admin"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>这个用户不拥有admin的角色<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:lacksRole</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有成功登录后，且不具有admin角色的用户才可以看到标签内的内容,name属性中只能填写一个角色的名称</em></p>
<h3 id="shiro-notAuthenticated"><a href="#shiro-notAuthenticated" class="headerlink" title="shiro : notAuthenticated"></a>shiro : notAuthenticated</h3><p><em>表示没有通过验证</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:notAuthenticated</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>用户身份验证没有通过<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:notAuthenticated</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有没有通过验证的才可以看到标签内的内容,包括通过记住我(<code>remember me</code>)登录的</em></p>
<h3 id="shiro-principal"><a href="#shiro-principal" class="headerlink" title="shiro : principal"></a>shiro : principal</h3><p><em>表示用户的身份 : 取值取的是你登录的时候,在Realm实现类中的<code>SimpleAuthenticationInfo(Object principal, Object hashedCredentials, ByteSource credentialsSalt, String realmName)</code>放的第一个参数哟~ 例如 :</em><br><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">return</span> <span class="keyword">new</span> SimpleAuthenticationInfo(user, user.getPassword(), ByteSource.Util.bytes(user.getUsername()), <span class="keyword">this</span>.getName());</span><br></pre></td></tr></table></figure></p>
<ol>
<li><p><em>如果第一个放的是username或者是一个值,那么就可以直接用</em></p>
<figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">&lt;!--取到username--&gt;</span></span><br><span class="line"><span class="tag">&lt;<span class="name">shiro:</span> <span class="attr">principal</span>/&gt;</span></span><br></pre></td></tr></table></figure>
</li>
<li><p><em>如果第一个参数放的是对象,比如放User对象. 那么如果要取其中某一个值,可以通过property属性来指定</em></p>
<figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">&lt;!--需要指定property--&gt;</span></span><br><span class="line"><span class="tag">&lt;<span class="name">shiro:principal</span> <span class="attr">property</span>=<span class="string">"username"</span>/&gt;</span></span><br></pre></td></tr></table></figure>
</li>
</ol>
<h3 id="shiro-user"><a href="#shiro-user" class="headerlink" title="shiro : user"></a>shiro : user</h3><p><em>表示已登录</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:user</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">label</span>&gt;</span>欢迎[<span class="tag">&lt;<span class="name">shiro:principal</span>/&gt;</span>],<span class="tag">&lt;/<span class="name">label</span>&gt;</span><span class="tag">&lt;<span class="name">a</span> <span class="attr">href</span>=<span class="string">"/logout.jsp"</span>&gt;</span>退出<span class="tag">&lt;/<span class="name">a</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:user</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>说明 : 只有已经登录(包含通过记住我(<code>remember me</code>)登录的)的用户才可以看到标签内的内容. 一般和标签<code>shiro : principal</code>一起用,来做显示用户的名称</em></p>
<h3 id="标签嵌套"><a href="#标签嵌套" class="headerlink" title="标签嵌套"></a>标签嵌套</h3><p><em>shiro的jsp标签可以嵌套使用,可以根据业务的具体场景进行使用. 例如一个按钮需要排除不是admin或user角色的用户才可以显示,则可以像如下这样实现 :</em><br><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">shiro:lacksRole</span> <span class="attr">name</span>=<span class="string">"admin"</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;<span class="name">shiro:lacksRole</span> <span class="attr">name</span>=<span class="string">"user"</span>&gt;</span> </span><br><span class="line">        <span class="tag">&lt;<span class="name">label</span>&gt;</span>这个用户不拥有admin或user的角色<span class="tag">&lt;/<span class="name">label</span>&gt;</span></span><br><span class="line">    <span class="tag">&lt;/<span class="name">shiro:lacksRole</span>&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">shiro:lacksRole</span>&gt;</span></span><br></pre></td></tr></table></figure></p>
<p><em>🙏参考链接(获益匪浅,非常感谢) :</em></p>
<ul>
<li><a href="https://blog.csdn.net/yaodieteng1510/article/details/79992247" target="_blank" rel="noopener">https://blog.csdn.net/yaodieteng1510/article/details/79992247</a></li>
</ul>

        </div>

        <blockquote class="post-copyright">
    
    <div class="content">
        
<span class="post-time">
    Last updated: <time datetime="2019-12-12T15:00:32.359Z" itemprop="dateUpdated">2019-12-12 15:00:32</time>
</span><br>


        
    </div>
    
    <footer>
        <a href="https://yubuntu0109.github.io">
            <img src="/img/my-portrait.jpg" alt="黄宇辉">
            黄宇辉
        </a>
    </footer>
</blockquote>

        
<div class="page-reward">
    <a id="rewardBtn" href="javascript:;" class="page-reward-btn waves-effect waves-circle waves-light">赏</a>
</div>



        <div class="post-footer">
            
	<ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/JSP/">JSP</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/Shiro/">Shiro</a></li></ul>


            
<div class="page-share-wrap">
    

<div class="page-share" id="pageShare">
    <ul class="reset share-icons">
      <li>
        <a class="weibo share-sns" target="_blank" href="http://service.weibo.com/share/share.php?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&title=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&pic=https://yubuntu0109.github.io/img/my-portrait.jpg" data-title="微博">
          <i class="icon icon-weibo"></i>
        </a>
      </li>
      <li>
        <a class="weixin share-sns wxFab" href="javascript:;" data-title="微信">
          <i class="icon icon-weixin"></i>
        </a>
      </li>
      <li>
        <a class="qq share-sns" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&title=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&source=My Personal Website For Blog" data-title=" QQ">
          <i class="icon icon-qq"></i>
        </a>
      </li>
      <li>
        <a class="facebook share-sns" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/" data-title=" Facebook">
          <i class="icon icon-facebook"></i>
        </a>
      </li>
      <li>
        <a class="twitter share-sns" target="_blank" href="https://twitter.com/intent/tweet?text=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&via=https://yubuntu0109.github.io" data-title=" Twitter">
          <i class="icon icon-twitter"></i>
        </a>
      </li>
      <li>
        <a class="google share-sns" target="_blank" href="https://plus.google.com/share?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/" data-title=" Google+">
          <i class="icon icon-google-plus"></i>
        </a>
      </li>
    </ul>
 </div>



    <a href="javascript:;" id="shareFab" class="page-share-fab waves-effect waves-circle">
        <i class="icon icon-share-alt icon-lg"></i>
    </a>
</div>



        </div>
    </div>

    
<nav class="post-nav flex-row flex-justify-between">
  
    <div class="waves-block waves-effect prev">
      <a href="/2019/08/11/一个基础的的SSM整合Shiro案例/" id="post-prev" class="post-nav-link">
        <div class="tips"><i class="icon icon-angle-left icon-lg icon-pr"></i> Prev</div>
        <h4 class="title">一个基础的的SSM整合Shiro案例</h4>
      </a>
    </div>
  

  
    <div class="waves-block waves-effect next">
      <a href="/2019/08/11/SSM整合Shiro的基本配置/" id="post-next" class="post-nav-link">
        <div class="tips">Next <i class="icon icon-angle-right icon-lg icon-pl"></i></div>
        <h4 class="title">SSM整合Shiro的基本配置</h4>
      </a>
    </div>
  
</nav>



    




















</article>

<div id="reward" class="page-modal reward-lay">
    <a class="close" href="javascript:;"><i class="icon icon-close"></i></a>
    <h3 class="reward-title">
        <i class="icon icon-quote-left"></i>
        thanks ~
        <i class="icon icon-quote-right"></i>
    </h3>
    <div class="reward-content">
        
        <div class="reward-code">
            <img id="rewardCode" src="/img/Wechat_appreciates.png" alt="打赏二维码">
        </div>
        
    </div>
</div>



</div>

        <footer class="footer">
    <div class="top">
        

        <p>
            
                <span><a href="/atom.xml" target="_blank" class="rss" title="rss"><i class="icon icon-lg icon-rss"></i></a></span>
            
            <span>This blog is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</span>
        </p>
    </div>
    <div class="bottom">
        <!-- 统计网站用户访问量. 技术支持：不蒜子(http://busuanzi.ibruce.info/) ————> Mar 13,2019 -->
        <p>
            <font style='font-size: 12px;color:springgreen'>
                    <div align="center">
                        <!-- 安装脚本 -->
                        <script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
                        <!-- 安装标签 -->
                        <span id="busuanzi_container_site_pv">
                            ◎用户总访问量 : <span id="busuanzi_value_site_pv"></span> 次 ~ &nbsp&nbsp
                        </span>
                        <span id="busuanzi_container_site_uv">
                            ◎总访客数(（づ￣3￣）づ╭❤～) : <span id="busuanzi_value_site_uv"></span>人 ~
                        </span>
                    </div>
                </font>
            </p>
            <!---------->
            <p>
                <font style='font-size: 10px'>
                    <span>黄宇辉 &copy; 2019</span>
                    <span>
                        
                        Blog source <a href="https://github.com/YUbuntu0109/YUbuntu0109.github.io" target="_blank">Github</a> 
                        Power by <a href="http://hexo.io/" target="_blank">Hexo</a>
                        Theme <a href="https://github.com/yscoder/hexo-theme-indigo" target="_blank">indigo</a>
                    </span>
                </font>
            </p>
        </div>
    </footer>
    </main>
    <div class="mask" id="mask"></div>
<a href="javascript:;" id="gotop" class="waves-effect waves-circle waves-light"><span class="icon icon-lg icon-chevron-up"></span></a>



<div class="global-share" id="globalShare">
    <ul class="reset share-icons">
      <li>
        <a class="weibo share-sns" target="_blank" href="http://service.weibo.com/share/share.php?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&title=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&pic=https://yubuntu0109.github.io/img/my-portrait.jpg" data-title="微博">
          <i class="icon icon-weibo"></i>
        </a>
      </li>
      <li>
        <a class="weixin share-sns wxFab" href="javascript:;" data-title="微信">
          <i class="icon icon-weixin"></i>
        </a>
      </li>
      <li>
        <a class="qq share-sns" target="_blank" href="http://connect.qq.com/widget/shareqq/index.html?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&title=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&source=My Personal Website For Blog" data-title=" QQ">
          <i class="icon icon-qq"></i>
        </a>
      </li>
      <li>
        <a class="facebook share-sns" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/" data-title=" Facebook">
          <i class="icon icon-facebook"></i>
        </a>
      </li>
      <li>
        <a class="twitter share-sns" target="_blank" href="https://twitter.com/intent/tweet?text=《详解JSP中Shiro标签的使用》 — 欢迎参观小灰灰的网站哟 ヾ(◍°∇°◍)ﾉﾞ ~&url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/&via=https://yubuntu0109.github.io" data-title=" Twitter">
          <i class="icon icon-twitter"></i>
        </a>
      </li>
      <li>
        <a class="google share-sns" target="_blank" href="https://plus.google.com/share?url=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/" data-title=" Google+">
          <i class="icon icon-google-plus"></i>
        </a>
      </li>
    </ul>
 </div>


<div class="page-modal wx-share" id="wxShare">
    <a class="close" href="javascript:;"><i class="icon icon-close"></i></a>
    <p>扫一扫，分享到微信</p>
    <img src="//api.qrserver.com/v1/create-qr-code/?data=https://yubuntu0109.github.io/2019/08/11/详解JSP中Shiro标签的使用/" alt="微信分享二维码">
</div>




    <script src="//cdn.bootcss.com/node-waves/0.7.4/waves.min.js"></script>
<script>
var BLOG = { ROOT: '/', SHARE: true, REWARD: true };


</script>

<script src="//unpkg.com/hexo-theme-material-indigo@latest/js/main.min.js"></script>


<div class="search-panel" id="search-panel">
    <ul class="search-result" id="search-result"></ul>
</div>
<template id="search-tpl">
<li class="item">
    <a href="{path}" class="waves-block waves-effect">
        <div class="title ellipsis" title="{title}">{title}</div>
        <div class="flex-row flex-middle">
            <div class="tags ellipsis">
                {tags}
            </div>
            <time class="flex-col time">{date}</time>
        </div>
    </a>
</li>
</template>

<script src="//unpkg.com/hexo-theme-material-indigo@latest/js/search.min.js" async></script>








<script>
(function() {
    var OriginTitile = document.title, titleTime;
    document.addEventListener('visibilitychange', function() {
        if (document.hidden) {
            document.title = 'Where are you going ?';
            clearTimeout(titleTime);
        } else {
            document.title = 'As long as you love me ~';
            titleTime = setTimeout(function() {
                document.title = OriginTitile;
            },2000);
        }
    });
})();
</script>



</body>
</html>
